1. Field of the Invention
The invention related to computer systems and more particularly to power management of such systems.
2. Description of the Related Art
Power consumption and associated performance and thermal issues are considerations for every computer system design. Many power saving techniques have been introduced to save power and mitigate the impact of thermal and battery power constraints. The frequency of operation (clock frequency) of the processor and its operating voltage can in large part determine its power consumption. Since power consumption and therefore heat generation are roughly proportional to the processor's frequency of operation, scaling down the processor's frequency has been a common method of staying within appropriate power limitations. Microprocessors utilized in mobile applications, i.e., those used in battery powered systems, are particularly sensitive to power considerations. That is in part due to the small, densely packed system construction that limits the ability of the mobile computer system to dissipate the heat generated by computer operation.
A common power management technique called “throttling” prevents the processor from overheating by temporarily placing the processor in a stop grant state. During the stop grant state the processor does not execute operating system or application code and typically has its clocks gated off or ramped down internally to reduce power consumption. Throttling is an industry standard method of reducing the effective frequency of processor operation and correspondingly reducing processor power consumption by using a clock control signal (the processor's STPCLK# input in x86 architectures) to modulate the duty cycle of processor operation. A temperature sensor monitors the processor temperature to determine when throttling is needed. Throttling continuously stops and starts processor operation and reduces the effective speed of the processor resulting in reduced power dissipation and thus lower temperature.
Referring to FIG. 1, one prior art system capable of implementing throttling is illustrated. Processor (CPU) 101 receives voltage 102 from voltage regulator 103. The voltage regulator is controlled by voltage identification (VID) signals 104. A clock multiplier value 107 (bus frequency (BF)[2:0]), is supplied to CPU 101 from an external source such as chipset logic 113 or written to an internal register. CPU 101 multiplies a received bus clock 109 by the multiplier value 107 to generate the core clocks for the processor.
CPU 101 receives a STPCLK# (the # sign indicates the signal is active low) input, which is used to temporarily suspend core clock operation and conserve power. An asserted STPCLK# signal results in the processor entering a stop grant state. In that state, execution of operating system (OS) and application code is stopped, and the core clocks are typically stopped or reduced although some minimum logic including clock multiplier logic may still operate.
Appropriately monitoring and controlling the processor's operating parameters is important to optimizing performance and battery life. Power management in older personal computer systems was typically implemented using micro-controllers and/or proprietary use of the system management mode (SMM). Current x86 based computer systems utilize an industry supported power management approach described in the Advanced Configuration and Power Interface Specification (ACPI). The ACPI specification enables an operating system (OS) controlled power management scheme. As part of that power management approach, ACPI specifies processor and device power states and system sleep states. While power consumption issues are particularly important for small portable computers, power consumption issues are important for all types of computers. For example, while battery life may not be a consideration for desktop computers, thermal considerations are still an important criteria. In particular, for desktop computers, the hotter they run, the more likely fans are turned on to try and cool the processor, which results in fan noise or frequent cycling of the fans, which may be objectionable to the computer user. In addition, saving power can have real economic benefits in terms of reduced electricity costs. Further, reduced power consumption and lower operating temperatures can improve system reliability. Reduced power consumption and lower operating temperatures can also allow for higher density server farms.
In order to provide power management functions, computer systems have utilized discrete (so called sideband) signals to convey various information relating to power management in the system between, e.g., chipset components and the microprocessor(s). Those sideband signals cost pins both on the microprocessor and in the chipsets in order to provide the necessary I/O. In addition, the sideband signals must be routed on the motherboard between the microprocessor and the appropriate chipset component adding complexity to the motherboard design.
It would be desirable to simplify power management for computer systems by reducing or eliminating the need for sideband signals to convey information thereby freeing up board space and pins on both chipset component(s) and processors. Further it would be desirable to provide that simplification and still work with existing power management approaches and provide flexibility to meet the needs of various classes of computer systems, from mobile systems to single processor desktop systems to multi-processor computer server systems and evolving power management requirements.